#include "hcsr04.h"

void main()
{
	uint32 i=65530;
	uint16 j=2000;
	init_Lcd();
	init_timer0();
	init_uart();
	while(1)
	{
		getDistance();
		while(i--);
		i=65530;
	}
}

void init_timer0()
{
	TRIG=0;
	ECHO=0;
	TMOD|=0X01;
	TMOD&=0XFD;
	TH0=0;
	TL0=0;
	TR0=0;
	EA=1;
	ET0=1;
}


void getDistance()
{
	uint32 now=0;
	uint8 dis=0;
	TRIG=0;
	wait_time(2);
	TRIG=1;
	ECHO=0;
	wait_time(10);
	TRIG=0;
	while(!ECHO);
	TR0=1;
	while(ECHO);
	TR0=0;
	dis=((TH0 * 256 + TL0) + 1)/58;
	TH0=0;
	TL0=0;
//	write_String(0x80,"dis:");
//	write_byte(dis/10%10+'0');
//	write_byte(dis%10+'0');
//	write_byte('.');
//	write_byte(dis*10%10+'0');
//	write_byte(dis*100%10+'0');
	
	send_byte('f');
	send_byte(':');
	send_byte(dis/10%10+'0');
	send_byte(dis%10+'0');
	send_byte('\0');
	
}


void wait_time(uint8 num)
{
	for(;num>0;num--)
	{
		_nop_();
	}
}


